import axios from "axios";
import qs from "qs"

let http = new axios.create({

    // 根路径
    baseURL : "http://localhost:8081/",
    // 超前时间
    timeout : 100000,
    // 携带凭证
    withCredentials : true,
    // 请求头
    // headers : {'X-Requested-With' : 'XMLHttpRequest'},
})

// 拦截请求
http.interceptors.request.use(request=>{
    // 请求头
    if(request.method == "post"){
        // 将 post 请求 携带的参数变为 对象格式,参数为 数组时，需要转换格式
        request.data = qs.stringify(request.data,{ arrayFormat: 'repeat' });
        // 设置请求头参数
        request.headers['Content-Type'] = 'application/x-www-form-urlencoded';
    }
    // 获取 token
    let token = sessionStorage.getItem("token");
    if(token){
        request.headers.token = token;
    }
    // console.log(request);
    return request;
})

// 拦截响应，处理请求内容
http.interceptors.response.use(response=>{
    // console.log(response);
    if(response.data.info == "用户没有登录"){
        // console.log("hahhhhhhhhhhhhhhhh");
        alert("登录已过期");
        window.location.href = "/";
    }
    return response.data;
})

export default http;
